$endpoint = "https://www.whogohost.com/host/modules/addons/DomainsReseller/api/index.php";
$action = "/order/domains/register";
$params = [
"domain" => "example.com",
"regperiod" => "1",
"nameservers" => [
"ns1" => "nsa.whogohost.com",
"ns2" => "nsb.whogohost.com",
],
"contacts" => [
"registrant" => [
"firstname" => "example",
"lastname" => "testing",
"fullname" => "example testing",
"companyname" => "textmachine",
"email" => "exam@gmail.com",
"address1" => "4 office",
"address2" => "",
"city" => "Lag",
"state" => "Lagos",
"zipcode" => "110001",
"country" => "Nigeria",
"phonenumber" => "+234.812345678"
],
"tech" => [
"firstname" => "example",
"lastname" => "testing",
"fullname" => "example testing",
"companyname" => "textmachine",
"email" => "exam@gmail.com",
"address1" => "4 office",
"address2" => "",
"city" => "Lag",
"state" => "Lagos",
"zipcode" => "110001",
"country" => "Nigeria",
"phonenumber" => "+234.87546898"
],
"billing" => [
"firstname" => "example",
"lastname" => "testing",
"fullname" => "example testing",
"companyname" => "textmachine",
"email" => "exam@gmail.com",
"address1" => "4 office",
"address2" => "",
"city" => "Lag",
"state" => "Lagos",
"zipcode" => "110001",
"country" => "Nigeria",
"phonenumber" => "+234.812345678"
],
"admin" => [
"firstname" => "example",
"lastname" => "testing",
"fullname" => "example testing",
"companyname" => "textmachine",
"email" => "exam@gmail.com",
"address1" => "4 office",
"address2" => "",
"city" => "Lag",
"state" => "Lagos",
"zipcode" => "110001",
"country" => "Nigeria",
"phonenumber" => "+234.812345678"
],
]
];
$headers = [
"username: email@example.com",
"token: " . base64_encode(hash_hmac("sha256", "1234567890QWERTYUIOPASDFGHJKLZXCVBNM", "email@example.com:" . gmdate("y-m-d H")))
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "{$endpoint}{$action}");
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($curl);
curl_close($curl);